1. Field of the Invention
The present invention relates to a method and apparatus for coding a signal in which signals such as a speech signal and a music signal can be coded with a low bit rate with high quality.
2. Description of the Related Art
As a conventional system capable of coding a speech signal with a high efficiency, there is known a code excited linear prediction coding (CELP) system in which an excitation signal is expressed by vector-quantized noise, as described in, for instance, "Code-excited Linear Prediction: High Quality Speech at very low bit rates" written by M. Schroeder and B. Atal, (Proceedings ICASSP, pages 937 to 940, 1985: reference No. 1), and "Improved Speech Quality and Efficient Vector Quantization in SELP" written by Kleijn et al., (Proceedings ICASSP, pages 155-158, 1988: reference No. 2).
In this conventional CELP system, a spectral parameter indicative of the spectral characteristic of the speech signal is extracted from the speech signal for every frame having a time period of, for example, 20 ms by using the linear prediction coding (LPC) analysis on the transmission side. Each of the frames is further subdivided into a plurality of sub-frames each of which has for example, a time period of 5 ms, and a parameter in an adaptive code book is extracted for every sub-frame based upon a past excitation signal. This parameter is composed of a delay parameter corresponding to a pitch period and a gain parameter. The pitch of the speech signal in the sub-frame is predicted by using an adaptive code book. As to this pitch-predicted excitation signal, an optimum excitation signal code vector is selected from an excitation signal code book (vector-quantized code book) which is composed of preselected kinds of noise signal, and then an optimum gain is calculated to thereby quantize the excitation signal.
An excitation signal vector is selected to minimize error power between a signal synthesized from the selected noise signal and the remaining signal. Then, the index for indicating the kind of selected code vector, the gain, and also the spectral parameter are combined with the parameter of the adaptive code book by a multiplexer and transmitted to a signal decoder side. The explanations about the signal decoder side are omitted.
Also, another conventional system which is based on the CELP system is known in the field. In the other conventional system, an input signal is subdivided into a plurality of bands (namely, sub-bands), and the CELP coding is carried out for every sub-band in order to properly process not only speech signals, but also signals such as music signals having irregularly changeable characteristics. This conventional system is described in, for example, "Subband vector excitation coding with adaptive bit allocation" by M. Yong et al., (Proceedings ICASSP, pages 743-746, 1989: reference No. 3).
In the conventional system disclosed in the reference No. 3, an input signal having the bandwidth of 8 kHz is subdivided into two sub-bands: a sub-band 1 having the bandwidth of 0 to 2 kHz, and a sub-band 2 having the bandwidth of 2 to 4 kHz. Thereafter, a prediction remaining power is calculated based on respective sub-band input signals. Further, the ratio of the prediction remaining power is calculated between the sub-bands. Then, the number of quantization bits required for the coding operation in each of the sub-bands are adaptively allocated.
In the above-described conventional systems, there is a problem that a large amount of calculations are necessarily required so as to select the optimum excitation signal code vector from the excitation signal code book. This is because in the above-described systems of the references No. 1 and No. 2, each of these code vectors is once filtered or convoluted, and this calculation is repeatedly carried out plural times equal to the quantity of code vectors stored in the code book when the optimum excitation signal code vector is selected. For example, if the number of bits of the code book is assumed to be "B" bits and the number of dimensions is selected to be "N", and if the filter response length of filtering or the impulse response length of convolution calculation is assumed to be "K", the calculation amount of N.times.K.times.2.sup.B .times.8000/N is required per 1 second. As one example, if B=10, N=4, and K=10, then 81,920,000 calculations are required per second. This may cause such a problem that the total calculation amount becomes very large.
Moreover, in the conventional system described in the reference No. 3, in the case that the number of quantization bits required for coding are allocated between the sub-bands, the allocation of the number of bits is performed based on the prediction remaining power in each of the sub-bands to carry out the coding of a signal.
As a consequence, in this conventional system, the above-described allocation of the number of bits is not performed in order that the actually required coding performance is satisfied so as to represent the excitation signal in each of the sub-bands. Accordingly, this conventional system could not represent sufficiently good sound qualities for signals such as music signals having irregularly changeable characteristics other than speech signals.
Moreover, when the excitation signal is expressed by using, for example, a combination of a plurality of pulses other than a content of the code book in order to reduce the total calculation amount, the above-mentioned allocation of the number of bits could not be properly matched to a total quantity of pulses.